Fix tests on nightly
authorAlex Crichton <alex@alexcrichton.com>
Thu, 17 Nov 2016 20:21:13 +0000 (12:21 -0800)
committerAlex Crichton <alex@alexcrichton.com>
Thu, 17 Nov 2016 20:44:55 +0000 (12:44 -0800)
src/rustversion.txt
tests/cargotest/support/mod.rs
tests/proc-macro.rs

index 8918bbc071ac01174e8a2034ede821c8cfa9a942..891320872cb58de7547e8d7a9fea739d5415e129 100644 (file)
@@ -1 +1 @@
-2016-11-03
+2016-11-16
index 18f11244b0683f1efc6542790c6de7b3cd2a01cf..429a0e65da3444eb5aa53d54ad8fa4631afecfa7 100644 (file)
@@ -235,8 +235,13 @@ impl<T, E: fmt::Display> ErrMsg<T> for Result<T, E> {
 // Path to cargo executables
 pub fn cargo_dir() -> PathBuf {
     env::var_os("CARGO_BIN_PATH").map(PathBuf::from).or_else(|| {
-        env::current_exe().ok().as_ref().and_then(|s| s.parent())
-            .map(|s| s.to_path_buf())
+        env::current_exe().ok().map(|mut path| {
+            path.pop();
+            if path.ends_with("deps") {
+                path.pop();
+            }
+            path
+        })
     }).unwrap_or_else(|| {
         panic!("CARGO_BIN_PATH wasn't set. Cannot continue running test")
     })
index c1a2306e6aa8de16705050c413115e2d5d571924..59dc96e21c7e077df532be21a7ed1cfec09f37d2 100644 (file)
@@ -49,8 +49,8 @@ fn noop() {
             use proc_macro::TokenStream;
 
             #[proc_macro_derive(Noop)]
-            pub fn noop(input: TokenStream) -> TokenStream {
-                input
+            pub fn noop(_input: TokenStream) -> TokenStream {
+                "".parse().unwrap()
             }
         "#);
     noop.build();
@@ -87,8 +87,8 @@ fn impl_and_derive() {
                 fn impl_by_transmogrify(&self) -> bool;
             }
 
-            #[derive(Transmogrify)]
-            struct X;
+            #[derive(Transmogrify, Debug)]
+            struct X { success: bool }
 
             fn main() {
                 let x = X::new();
@@ -115,8 +115,6 @@ fn impl_and_derive() {
             #[proc_macro_derive(Transmogrify)]
             #[doc(hidden)]
             pub fn transmogrify(input: TokenStream) -> TokenStream {
-                assert_eq!(input.to_string(), "struct X;\n");
-
                 "
                     impl X {
                         fn new() -> Self {
@@ -129,11 +127,6 @@ fn impl_and_derive() {
                             true
                         }
                     }
-
-                    #[derive(Debug)]
-                    struct X {
-                        success: bool,
-                    }
                 ".parse().unwrap()
             }
         "#);